package com.sedu.manage.domain;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.sedu.common.annotation.Excel;
import com.sedu.common.core.domain.BaseEntity;

/**
 * 考勤重点关注对象 attention_student
 *
 * @author yulinfeng
 * @date 2025-03-29
 */
public class AttentionStudent extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 关注记录ID
     */
    private Long attentionId;

    /**
     * 学生
     */
    @Excel(name = "学生ID")
    private Long studentId;

    /**
     * 关注原因
     */
    @Excel(name = "关注原因")
    private String reason;

    /**
     * 状态
     */
    @Excel(name = "状态")
    private Long status;

    /**
     * 开始日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startDate;

    /**
     * 结束日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endDate;

    public void setAttentionId(Long attentionId) {
        this.attentionId = attentionId;
    }

    public Long getAttentionId() {
        return attentionId;
    }

    public void setStudentId(Long studentId) {
        this.studentId = studentId;
    }

    public Long getStudentId() {
        return studentId;
    }

    public void setReason(String reason) {
        this.reason = reason;
    }

    public String getReason() {
        return reason;
    }

    public void setStatus(Long status) {
        this.status = status;
    }

    public Long getStatus() {
        return status;
    }

    public void setStartDate(Date startDate) {
        this.startDate = startDate;
    }

    public Date getStartDate() {
        return startDate;
    }

    public void setEndDate(Date endDate) {
        this.endDate = endDate;
    }

    public Date getEndDate() {
        return endDate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("attentionId", getAttentionId())
                .append("studentId", getStudentId())
                .append("reason", getReason())
                .append("status", getStatus())
                .append("startDate", getStartDate())
                .append("endDate", getEndDate())
                .append("createTime", getCreateTime())
                .append("updateTime", getUpdateTime())
                .toString();
    }
}
